package com.idbk.chargestation.bean;

import com.google.gson.annotations.SerializedName;


/**
 * 开始充电和充电实时数据返回解析
 * @author zhx
 *
 */
public class JsonChargeRefresh extends JsonBase{

	@SerializedName("id")
	public int id;//充电桩id

	@SerializedName("name")
	public String name;//名称

	@SerializedName("address")
	public String address;//地址

	@SerializedName("pileSn")
	public String pileSn;//电桩序列号

	@SerializedName("pileType")
	public int pileType;//电桩类型

	@SerializedName("pileStatue")
	public int pileStatue;//电桩状态
	
	@SerializedName("chargeMethod")
	public int chargeMethod;//充电方式
	
	@SerializedName("chargeLimit")
	public int chargeLimit;
	
	@SerializedName("voltage")
	public double voltage;//充电电压

	@SerializedName("current")
	public double current;//充电电流

	@SerializedName("chargeMoney")
	public double chargeMoney;//实时消费金额

	@SerializedName("finishTime")
	public int finishTime;//已充时间

	@SerializedName("quantity")
	public double quantity;//已充电量

	@SerializedName("remainTime")
	public int remainTime;//剩余时间

	@SerializedName("SOC")
	public int SOC;//电池SOC

	@SerializedName("voltage_B")
	public double voltage_B;//B相电压

	@SerializedName("current_B")
	public double current_B;//B相电流

	@SerializedName("voltage_C")
	public double voltage_C;//C相电压

	@SerializedName("current_C")
	public double current_C;//C相电流

	@SerializedName("gunNum")
	public int gunNun;//枪口标记

	@SerializedName("gunA")
	public int gunA;//1号充电枪

	@SerializedName("gunB")
	public int gunB;//2号充电枪
	
	@SerializedName("tradSn")
	public String tradSn;//交易流水号
	
	@SerializedName("startTime")
	public String startTime;//开始充电时间
	
	@SerializedName("endTime")
	public String endTime;//结束充电时间
	
	@SerializedName("chargeTime")
	public String chargeTime;//充电时间
	
	@SerializedName("bookTime")
	public int bookTime;//预约时长
	
	@SerializedName("bookMoney")
	public double bookMoney;//预约费用
	
	@SerializedName("serverMoney")
	public double serverMoney;//充电实时数据服务费用

	@SerializedName("serviceMoney")
	public double serviceMoney;//停止充电数据服务费用

	@SerializedName("cost")
	public double cost;//消费金额
		
	@SerializedName("pointName")
	public String pointName;//充电点名称
	
	@SerializedName("tariff")
	public JsonPileTariff tariff;//自费信息
	
	@SerializedName("chargeSpeed")
	public String chargeSpeed;//充电桩速率描述
	
	@SerializedName("subChargeMoney")
	public double subChargeMoney;//除预约费之外的总金额（铁匠版总金额）,小数点精确2位
	
	@SerializedName("priceTypeEnum")
	public int priceTypeEnum; //充电桩的电费类型，1：表示通用电价；2：表示分时电价
	
	public int getGunState() {
		if (gunNun == 1){
			return gunA;
		} else if(gunNun == 2) {
			return gunB;
		} else {
			return gunA;
		}
	}

	public boolean isDcCharging() {
		return pileType == JsonPointPile.PILE_TYPE_DC
				|| pileType == JsonPointPile.PILE_TYPE_DC_DOUBLE_GUN_ASYN
				|| pileType == JsonPointPile.PILE_TYPE_DC_DOUBLE_GUN_SYN
				|| pileType == JsonPointPile.PILE_TYPE_DC_MULTI_GUN_SYN;
	}

	public boolean isAcCharging() {
		return pileType == JsonPointPile.PILE_TYPE_AC_SINGLE_PHASE
				|| pileType == JsonPointPile.PILE_TYPE_AC_THREE_PHASE
				|| pileType == JsonPointPile.PILE_TYPE_AC_DOUBLE_GUN_SINGLE_PHASE
				|| pileType == JsonPointPile.PILE_TYPE_AC_DOUBLE_GUN_THREE_PHASE
				|| pileType == JsonPointPile.PILE_TYPE_AC_MULTI_GUN_SINGLE_SYN
				|| pileType == JsonPointPile.PILE_TYPE_AC_MULTI_GUN_THREE_SYN;
	}
}

